import { store } from 'quasar/wrappers'
import { createStore } from 'vuex'
import getters from './getters'
import app from './modules/app' // 一般需要将文件一个一个的导入，然后在 modules（文件夹的名称 ） 定义
import login from './modules/login' // 一般需要将文件一个一个的导入，然后在 modules（文件夹的名称 ） 定义
import theme from './modules/theme' // 一般需要将文件一个一个的导入，然后在 modules（文件夹的名称 ） 定义
import permission from './modules/permission' // 一般需要将文件一个一个的导入，然后在 modules（文件夹的名称 ） 定义
import customMenu from './modules/customMenu'
import work from './modules/work'
import leftChart from "./modules/leftChart"; // 左侧部分
import rightCon from "./modules/rightCon"; // 右侧部分
import echartsPz from "./modules/echartsPz"; // 图表默认数据
import user from "./modules/user"; // 图表默认数据
// import example from './module-example'

/*
 * If not building with SSR mode, you can
 * directly export the Store instantiation;
 *
 * The function below can be async too; either use
 * async/await or return a Promise which resolves
 * with the Store instance.
 */

// 批量导入modules中的文件 require.context() webpack的方法
// const modulesFiles = require.context('./modules', true, /\.js$/)
const Store = createStore({
    modules: {
        app,
        login,
        theme,
        permission,
        customMenu,
        work,
        leftChart,
        rightCon,
        echartsPz,
        user,
    },
    // modulesFiles,
    getters,

    // enable strict mode (adds overhead!)
    // for dev mode and --debug builds only
    // strict: process.env.DEBUGGING
    strict: false
})

export default Store

// export default store(function (/* { ssrContext } */) {
//   const Store = createStore({
//     modules: {
//       app,
//       login
//     },
//     // modulesFiles,
//     getters,

//     // enable strict mode (adds overhead!)
//     // for dev mode and --debug builds only
//     strict: process.env.DEBUGGING
//   })

//   return Store
// })